Skip to content

Listen to JIT events#3169

Open
timcassell wants to merge 11 commits into
masterfrom
jit-stage-determinism
Open

Listen to JIT events#3169
timcassell wants to merge 11 commits into
masterfrom
jit-stage-determinism

Conversation

@timcassell

@timcassell timcassell commented Jun 3, 2026

Copy link
Copy Markdown
Collaborator

Improves the JIT stage by listening to events instead of waiting 250ms per tier. It's still not 100% deterministic, but it's much better than before.

Master: ~750ms + benchmark time
PR: ~90ms + benchmark time + compilation time

@timcassell timcassell force-pushed the jit-stage-determinism branch from 610e77d to 02e7826 Compare June 20, 2026 18:48
@timcassell timcassell marked this pull request as ready for review June 20, 2026 18:48
@timcassell timcassell force-pushed the jit-stage-determinism branch from 6250266 to ae07d7b Compare June 20, 2026 20:09
timcassell and others added 3 commits June 20, 2026 16:59
Conflict resolved in DeclarationsProvider.cs: keep both master's
GetLoadArguments/GetPassArguments and the branch's
GetWorkloadMethodParameterTypes/GetTypeOfExpression resolver helpers.

Master reintroduced FileCleanupHelper (it now has call sites in
BenchmarkRunnerClean/GeneratorBase), overriding the branch's tangential
deletion of it.

Bumped SyncTaskCoreEmitter's no-arg async-method ordinals +1 to track the
branch's +1 shift of the base map: the generated __ResolveWorkloadMethods
member shifts every Roslyn declaration-order ordinal by one, and master's
sync-task override (added independently) hadn't accounted for it, breaking
InProcessEmitTest's ConsumeTasksSynchronously case.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@timcassell timcassell force-pushed the jit-stage-determinism branch from 54e01a3 to 80765b9 Compare June 27, 2026 22:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant